package cn.com.guage.single.idler;

/**
 * 懒汉式-方式2（线程安全） ，通过加同步锁的机制，保证了每次只有一个线程可以操作我们当前的对象，确保了线程安全,
 * 但是由于加锁就会导致该代码执行效率特别低。
 * @author yangdechao
 *
 */
public class Singleton2 {

	private static Singleton2 instance;

	public Singleton2() {
	}

	public static synchronized Singleton2 getInstance() {
		if (instance == null) {
			instance = new Singleton2();
		}
		return instance;
	}

	public void say() {
		System.out.println("say");
	}

	public static void main(String[] args) {
		Singleton2 instance1 = Singleton2.getInstance();
		System.out.println(instance1);
		instance1.say();
		Singleton2 instance2 = Singleton2.getInstance();
		System.out.println(instance2);
	}

}
